import store from '@/store'

function checkPermission(el, binding) {
	const { value } = binding
	// console.log(store);
	//ZCZY-18027 首页增加菜单判断
	const permissionLists = store.getters['user/permissionSet'] || [];
	const primaryMenusList = store.getters['user/menus'] || [];

	const roles = permissionLists.concat(primaryMenusList)

	if (value && value instanceof Array) {
		if (value.length > 0) {
			const permissionRoles = value
			const hasPermission = roles.some(role => {
				return permissionRoles.includes(role)
			})

			if (!hasPermission) {
				el.parentNode && el.parentNode.removeChild(el)
			}
		}
	} else {
		throw new Error(`need roles! Like v-permission="['admin','editor']"`)
	}
}

export default {
	inserted(el, binding) {
		checkPermission(el, binding)
	},
	update(el, binding) {
		checkPermission(el, binding)
	}
}
